There are known EPG systems which provide television viewers with on-screen program schedule information in a convenient format. In so-called interactive EPGs, the operation of the EPG is under user control so that the user may browse schedule information in any order, select programs from on-screen menus for current or future viewing, order pay-per-view programming and perform other useful operations on demand. An example of an advanced EPG system is described in co-pending application serial no. 08/119367 by Bennington, et al., entitled "Electronic Television Program Guide Schedule System and Method" (hereinafter, "Bennington et at."), incorporated herein by reference.
Most EPGs operate in the following basic manner: program schedule information, and sometimes applications and/or systems software, is transmitted to equipment located on the viewer's premises (usually a "set-top box") by way of broadcast, cable, direct satellite or some other suitable form of transmission. The set-top box contains memory so that the program schedule information can be retained for later viewing. The program schedule information stored in the set-top box is periodically updated (e.g., on a continuous, daily, weekly, bi-weekly basis). A programmed microcontroller in the set-top box cooperates with the viewer's television set to display the stored program schedule information and to implement other functions of the EPG in response to user-generated signals. The functions available will depend on the sophistication of the particular EPG.
In all such EPGs in which schedule information is stored in memory in customer premises equipment, memory storage capacity is a major concern. The size of the memory will govern the volume of programming information available for the viewer's inspection at any one time and thus directly effect the perceived value of the EPG to viewers. Cost and physical size considerations place practical limits on the storage capacity of the set-top box. Therefore, there must be some mechanism for managing this finite resource so as to maximize the perceived value of the EPG to the user.
In this regard, simply deleting program information as it becomes outdated to make room for the new program schedule information for every available channel in the viewer's service area, as in some EPGs proposed, is less than optimal in terms of maximizing value to the viewer. The most valuable programming information to a given viewer will not, in general, correspond to the complete schedule for all available channels for the time period covered by the information. For instance, schedule information for a premium channel that the viewer doesn't subscribe to will be of lesser interest to the viewer than, say, the schedule information for the "major" channels (e.g., ABC, CBS, NBC, CNN). If the EPG permits the viewer to load one or more "favorite channels" into the EPG, the viewer will obviously be more interested in the schedules for those channels than others.
Accordingly, there is a need for an intelligent EPG memory management system which takes into account the differing utility of the various types of program information stored in the EPG so as to maximize the value of the EPG to the viewer. One proposed solution to this need is discussed in U.S. Pat. No. 5,038,211 to Hallenbeck (hereinafter, "Hallenbeck"). In the EPG system of Hallenbeck, schedule information is transmitted to the viewer in three separate transmissions, the first of which is used by a user-configured information pre-filter in the EPG to determine whether the information in the subsequent transmissions should be stored or discarded.
This selective reception approach to EPG memory management has at least two drawbacks, however. First, the transmission of schedule information must be carried out using special protocols, which introduces complexity on the service provider's side of the EPG. A second drawback is the pre-filter's inability to ascribe intermediate values of utility to program schedule information. By making an initial binary determination as to utility (valuable--store; not valuable--reject), the EPG of Hallenbeck may prevent potentially useful information from reaching the viewer. Moreover, the pre-filtering scheme of Hallenbeck does not take into account the fact that the value of program information will in general vary over time, making a priori determinations about the future utility of information inappropriate in certain situations. In other words, to the extent the EPG of Hallenbeck makes a projection as to the future value of program information sent to the viewer when it is received, its pre-filtering scheme is likely to be overinclusive as to the information rejected.
It is therefore one object of the present invention to provide an EPG memory management system that does not require special transmission protocols. It is a further object of the present invention to implement an EPG which initially stores the schedule information for the viewer's service area and which then permits the program information to assume a continuous range of values according to its present utility so that the least valuable information stored in memory can be identified and deleted on a real-time basis as free memory space is needed by the system.